1. Software and Hardware Introduction
1.1 Introduction to MindPlus
Mind+ is a youth-oriented programming software based on Scratch3.0. It supports graphical and code-based programming for various open-source hardware including Arduino, UNIHIKER K10, and UNIHIKER M10. Users can simply drag and drop graphical blocks to complete programming tasks. Additionally, it allows the use of advanced programming languages such as Python, C, and C++, enabling everyone to enjoy the joy of creating.
Please download the latest version of Mind+ from the official website: https://mindplus.cc.
1.2 Introduction to UNIHIKER K10
UNIHIKER K10 is a development learning board specifically designed for quick experience and learning of artificial intelligence. It adopts 100% domestic chips with independent intellectual property rights, meeting the teaching needs of programming, Internet of Things, and artificial intelligence in information technology courses. The board integrates an LCD color screen, Wi-Fi and Bluetooth, a camera, microphone, speaker, RGB indicator light, various sensors, and rich expansion interfaces. With highly integrated onboard resources, it enables easy implementation of sensor control, IoT applications, and AI projects such as face recognition, voice recognition, and voice synthesis without requiring additional equipment during teaching.
UNIHIKER K10 purchase link: clickhere
2. Hardware Connection
Materials Needed
- Hardware
- UNIHIKER K10 x 1
- HUSKYLENS 2 x 1
- Type-C USB cable x2
- 4-pin white silicone wire x1
Prepare one Type-C USB cable and one 4-pin white silicone wire. Connect the computer and UNIHIKER K10 with theType-C USB cable. Use the 4-pin white silicone wire to connect UNIHIKER K10 and HUSKYLENS 2 first, then use an additional Type-C USB cable to connect the Type-C interface of HUSKYLENS 2 to the power supply to power HUSKYLENS 2. Refer to the wiring diagram below for reference.
3. Load the HUSKYLENS 2 library
3.1 Load HUSKYLENS 2 Library in MindPlus 2.0
Double-click to open Mind+. After opening, locate "Upload" and click to select it
Wait for the upload mode initialization to complete, click "Extensions" in the lower-left corner. For the first use, you need to download the corresponding main controller extension library. Find "UNIHIKER K10" and click the "Download" button in the upper-right corner to download the library.Once the UNIHIKER K10 expansion pack has finished downloading, click "Load UNIHIKER K10 Expansion Pack". After successfully loading, it will look like the following image.
Click 'Module ', search for 'HUSKYLENS 2' in the module extensions list, find the HUSKYLENS 2 extension library, and click to download.After successful download, click to load the HUSKYLENS 2 library.
3.2 Load HUSKYLENS 2 Library in MindPlus 1.8 Series
Open the programming software Mind+, click the top-right corner to switch to offline mode. Then click the "Extensions" at the bottom-left corner.
Select the UNIHIKER K10 as the main controller.
Click ' User-Ext', search for "HUSKYLENS 2" in the search box, press Enter, find the "HUSKYLENS 2" extension library, and click to load the extension library.
The following visual recognition functionality is based on the HUSKYLENS 2 firmware version 1.0.
The current latest system version is 1.1.6. Find System Settings > Device Information to check your current system version. We recommend updating to the latest version to experience new features. Update tutorial: Click here
4.Face Recognition Blocks
4.1Face Recognition - Output Relevant Data
Under the face recognition function, when a face appears on the HuskyLens 2 screen, it can be detected and framed, allowing the acquisition of the total number of faces detected and related data for a specified face.
Example Program:
Click to upload the program to the device in Mind+, and wait for the upload to complete. Point the HuskyLens 2 camera at the face of the frame to learn it. For detailed instructions on how to learn faces, refer to the HUSKYLENS 2 WIKI section. Once the learning is complete, aim at the learned face and observe the output results on the K10 screen.
**Output Result: **As shown below, you can obtain the total number of faces detected on the screen, whether or not the face has been learned; you can specify the face ID near the center of the camera frame, and the ID of the first detected face (faces not learned will have an ID of 0).
4.2 Get Detailed Data of a Specific Face in the Frame
You can obtain the facial features and position data of a specified face. The available data includes: face ID, face name, width, height, as well as the X and Y coordinates of the face center, X and Y coordinates of the left/right eyes, X and Y coordinates of the left/right mouth corners, and the X/Y coordinates of the nose.
The following example program can obtain the facial feature data of a face near the center of the camera frame, even if the face is not learned.
**Output Result: **As shown below, running the program will display the face ID and the facial feature coordinates of the face on the K10 screen. Since this face has not been learned, the face ID will be 0.
In addition to the above data, you can also obtain more face-related data, such as the total number of a specified face in the frame, the name of that face, and the related data of the first detected face (even for faces that have not been learned).
For example, for a learned face, the following example program is provided:
**Output Result: ** As shown below, running the program will display the total number of ID1 faces in the frame, the name of that face, and the XY coordinates of the first detected ID1 face center. (The default name for a face is "Face." For how to set a name, see the HUSKYLENS 2 WIKI.)
4.3 Face Recognition Blocks Description
| block | Description |
|---|---|
|
Used to obtain one set of Face Recognition data under the Face Recognition function of HUSKYLENS 2. |
|
Determine if a human face is present in the current frame. |
|
Retrieves data of the face closest to the screen cross cursor, including face ID, custom face name, center X/Y coordinates, width, height, left/right eye X/Y coordinates, left/right mouth corner X/Y coordinates, and nose X/Y coordinates. |
|
Get the total number of faces detected on the screen, including both unregistered and registered faces. |
|
When multiple faces are detected, retrieves data for a specified face. |
|
Get the total number of learned faces detected on the screen. |
|
Determine if a face with the specified ID exists in the frame. Unlearned IDs are uniformly set to 0, and learned IDs are sorted in the order they were learned. |
|
Gets the total number of detected faces with a specified ID on the screen. |
|
Obtain the number of faces with the specified ID in the current frame. |
|
When multiple faces are detected, retrieve the relevant data of a specified face. |
|
Detect the number of faces that have been learned by HuskyLens 2, regardless of whether they appear in the current frame. |
5.Object Recognition Blocks
5.1Object Recognition - Output Relevant Data
You can recognize objects within the HuskyLens 2 field of view (limited to 80 predefined object categories, as described in HUSKYLENS 2 WIKI. The related data that can be retrieved includes: total number of recognizable objects on the screen, object ID near the center of the HuskyLens 2 camera frame, and the first detected object.
Example Program:
Click to upload the program to the device in Mind+, and wait for the upload to complete.
Point the HuskyLens 2 camera at the object in the frame to learn it. For detailed instructions on how to learn objects, refer to the HUSKYLENS 2 WIKI section.
Once the learning is complete, aim at the object and observe the output results on the K10 screen.
Output Result: The total number of objects detected can be output, along with the corresponding object ID, name, and other data. If the object has not been learned, the ID will be 0.
5.2 Get Relevant Data of a Specific Object
After recognizing an object, HuskyLens 2 can retrieve relevant data for a specified object in the frame. For example, it can check if a particular object is in the frame, retrieve the object's name, get the number of the same type of object in the frame, and when multiple objects of the same type appear, it can retrieve parameters for a specified object, such as name, X/Y coordinates, width, and height.
Example Program:
Output Result: As shown in the figure, the total number of objects in the frame, the number of ID2 objects, their names, and the coordinates of the first detected ID2 object can be obtained.
5.3 Object Recognition Description
| block | Description |
|---|---|
|
Used to obtain one set of object recognition data under the Object Recognition function of HUSKYLENS 2. |
|
Determines whether there are recognizable objects in the current frame. |
|
Obtains data for the object closest to the crosshair on the screen, including object ID, name, center X coordinate, center Y coordinate, width, and height. |
|
Gets the number of all detectable objects in the screen. |
|
When multiple recognizable objects appear,obtains the relevant data of a specified object. |
|
Detect the number of objects that have been learned by HuskyLens 2, regardless of whether they appear in the current frame. |
|
Determines whether an object with a specified ID exists in the frame. (After HUSKYLENS 2 learns objects, it assigns ID numbers according to the learning order.) |
|
Obtains the number of objects with the specified ID in the current frame. |
|
Obtains the related data of a specified object. |
|
When multiple similar objects appear,obtains the related data of a specified object. |
6.Object Tracking Blocks
6.1 Object Tracking - Output Relevant Data
When HUSKYLENS 2 detects a trackable target object, it can acquire relevant tracking data. The data that can be acquired includes: the object's ID, Name, XY coordinates, Width, and Height.
Example Program:
Click to upload the program to the device in Mind+, and wait for the upload to complete.
Point the HUSKYLENS 2 camera at the object to be tracked (the target object must be framed first, see HUSKYLENS 2 WIKI for details).
After framing is complete, aim at the target object to observe the output results.
Output Result: It can output the tracked object's ID, Name, XY coordinates, Width, and Height. The default object name is "Obj". To modify the name, see the Object Tracking usage instructions.
6.2 Object Tracking Blocks Description
| block | Description |
|---|---|
|
Used to obtain one set of Object Tracking data under the Object Tracking function of HUSKYLENS 2. |
|
Determines whether there is a trackable target in the current frame. |
|
Obtains data for the object closest to the crosshair on the screen, including object ID, name, center X coordinate, center Y coordinate, width, and height. |
7.Color Recognition Blocks
7.1Color Recognition - Output Relevant Data
It can recognize color blocks within the HUSKYLENS 2 field of view and output color block-related data. Readable data includes: the ID of the color block closest to the center of the HUSKYLENS 2 camera frame, the total number of detected color blocks, and the ID of the first detected color block.
Example Program:
Click to upload the program to the device in Mind+, and wait for the upload to complete.
Point the HUSKYLENS 2‘s crosshair at a color block to learn it. For detailed instructions on how to learn colors, refer to the HUSKYLENS 2 WIKI.
Once learning is complete, aim the HUSKYLENS 2 camera at the color blocks and observe the output results.
Output Result: It can output the total number of detected color blocks. All color blocks framed by a box will be counted, whether they have been learned or not. It can output the corresponding color block ID as required. The color block near the center of the frame is outlined in a white box, indicating it is an unlearned color block, so its output ID is 0.
7.2 Get Data for a Specific Color
After HUSKYLENS 2 recognizes a color, it can acquire data for a specific color in the frame. For example, it can determine if a specific color is in the frame, get the name of a specific color, or get the count of color blocks of the same specific color in the frame. When multiple color blocks of the same color appear, it can be set to acquire parameters for a specific one, including its name, X/Y coordinates, width, and height.
Example Program:
Output Result: As shown, it can acquire the total count and name of color block ID 1 in the frame, and the coordinate position of the first detected ID 1 color block. (Color names can be customized; the default is "color". For details on setting names, see HUSKYLENS 2 WIKI)
7.3 Color Recognition Blocks Description
| block | Description |
|---|---|
|
Used to obtain one set of color recognition data in the Color Recognition function of HUSKYLENS 2. |
|
Determines whether recognizable color blocks exist in the current frame. |
|
Obtains data for the color block closest to the crosshair on the screen, including ID, name, center X/Y coordinates, width, and height. |
|
Gets the total number of detected color blocks in the screen. |
|
When multiple color blocks are detected, obtaining the data of a specified block. (If the block is unlearned, its ID is 0.) |
|
get the number of colors that have been learned by HuskyLens 2, regardless of whether they appear in the current frame. |
|
Determines whether a color with a specified ID exists in the image. (After HUSKYLENS 2 learns colors, IDs are assigned sequentially.) |
|
Obtains the number of color blocks for a learned color in the current frame.. |
|
Obtains the data of a learned color. |
|
When multiple color blocks of the same color appear,they obtain the data of a specified block. |
8.Object Classification Blocks
8.1Recognize Learned Objects and Output ID/Name
Under the object classification function, after an object has been learned, HUSKYLENS 2 can recognize it when it sees it again. The following example program can be used to get the corresponding ID and name of the recognized learned object.
Click to upload the program to the device in Mind+, and wait for the upload to complete.
After HUSKYLENS 2 finishes learning the object, point the HUSKYLENS 2 camera at the learned object and observe the output results. For detailed instructions on how to learn objects, refer to HUSKYLENS 2 WIKI
Output Result: As shown below, when a learned object appears in the frame, it will be framed, and its name, ID, and confidence level will be displayed. If the object's name has not been set, the default output name is: object. For how to set the name, please see HUSKYLENS 2 WIKI.
8.2 Object Classification Blocks Description
| block | Description |
|---|---|
|
Under the HUSKYLENS 2 Object Classification function, used to acquire the recognition result of a learned object from one scan. |
|
Judges if a specific learned object has been detected. |
|
Gets data for a specific learned object, including ID and Name. The IDs in Object Classification are pre-assigned in the model, so the user's learning order is not related to the object ID. |
9.Hand Gesture Recognition Blocks
9.1Hand Gesture Recognition - Output Relevant Data
It can detect hand gestures within the HuskyLens 2 field of view and acquire gesture-related data. Readable data includes: the total number of gestures detected in the frame, the ID of the gesture closest to the center of the HuskyLens 2 camera frame, and the ID of the first detected gesture.
Example Program:
Click to upload the program to the device in Mind+, and wait for the upload to complete.
Point the HuskyLens 2 camera at the gesture in the frame to learn it. For detailed instructions on how to learn gestures, refer to HUSKYLENS 2 WIKI.
Once learning is complete, aim at the gesture and observe the output results on the UNIHIKER K10 screen.
Output Result: It can output the total number of detected gestures. All detected gestures will be counted (i.e., framed by a box), whether they have been learned or not. It can output the corresponding gesture ID as required. Learned gestures are assigned IDs in learning order, while unlearned gestures have an ID of 0.
9.2 Get Data for a Specific Gesture
It can acquire keypoint data for a specific gesture, such as its ID, Name, fingers, and wrist. Detailed data includes: Gesture ID, Gesture Name, X and Y coordinates of the gesture's center point, Width, Height, Wrist X/Y coordinates, and the X/Y coordinates for the base, joint, and tip of each finger. For details, please see the Hand Gesture Recognition Blocks Description.
The example program below shows how to get the X/Y coordinate data for the wrist and the tips of all five fingers for the gesture closest to the center of the camera frame. This data can also be obtained for unlearned gestures.
Output Result: As shown below, after running the program, the UNIHIKER K10 screen displays the Gesture ID and the keypoint data for that gesture. Since this gesture has not been learned, the Gesture ID is 0.
In addition to the data above, more data for a specific gesture can be acquired. For example, determining if a specific gesture is in the frame, the name of a specific gesture, or the count of identical gestures in the frame. When multiple identical gestures appear, it's possible to specify and acquire parameters for one of them, including Name, gesture center X/Y coordinates, Width, Height, fingertip coordinates, wrist coordinates, and more.
Example Program:
Output Result: As shown, it can acquire the count and name of Gesture ID 1 in the frame, and the coordinate position of the first detected Gesture ID 1.
9.3 Hand Gesture Recognition Blocks Description
| block | Description |
|---|---|
|
Used to obtain one set of gesture recognition data under the Gesture Recognition function of HUSKYLENS 2. |
|
Determines whether gestures exist in the current frame. |
|
Gets data for the gesture closest to the on-screen crosshair, including Gesture ID, Gesture Name, X/Y coordinates of the gesture's center point, Width, Height, Wrist X/Y coordinates, and the X/Y coordinates for the base, joint, and tip of each finger. |
|
Gets the total number of gestures detected on the screen. |
|
When multiple gestures are detected, obtains the data of a specified gesture. |
|
Get the number of hand gestures that have been learned by HuskyLens 2, regardless of whether they appear in the current frame. |
|
Obtains the total number of gestures with a specified ID in the current frame. |
|
Obtains data for a gesture with a specified ID. |
|
When multiple gestures share the same ID, obtains the data of a specified gesture. |
|
Determines whether a gesture with the specified ID exists in the image. (After HUSKYLENS 2 learns gestures, IDs are assigned sequentially.) |
10.Pose Recognition Blocks
10.1Recognize Human Pose and Output Relevant Data
It can recognize human poses within the HuskyLens 2 field of view and acquire pose-related data. Readable data includes: the total number of bodies detected, the ID of the human pose closest to the center of the HuskyLens 2 camera frame, and the ID of the first detected pose.
Example Program:
Click to upload the program to the device in Mind+, and wait for the upload to complete.
Point the HuskyLens 2 camera at the human pose in the frame to learn it. For detailed instructions on how to learn poses, refer to HUSKYLENS 2 WIKI .
Once learning is complete, aim at the pose and observe the output results on the UNIHIKER K10 screen.
Output Result: It can output the total number of bodies detected; it can output the specified human pose ID. Learned human poses are assigned IDs in learning order, while unlearned poses have an ID of 0.
10.2 Get Data for a Specific Pose
It can acquire keypoint data for a specific human pose, such as its ID, Name, facial features, and body joints. Detailed data includes: Human ID, Human Pose Name, X and Y coordinates of the human's center point, Width, Height, X/Y coordinates for left/right eyes, ears, and nose, and X/Y coordinates for left/right shoulders, elbows, wrists, hips, knees, and ankles. For details, please see the Pose Recognition Blocks Description.
The example program below shows how to get the X/Y coordinate data for the nose, left shoulder, elbow, hip, knee, and ankle of the human body closest to the center of the camera frame. This data can also be obtained for unlearned human poses.
**Output Result: ** shown below, after running the program, the UNIHIKER K10 screen displays the Human ID and the coordinate data for the nose and other key body points. Since this human pose has not been learned, the Human ID is 0.
In addition to the data above, more human pose data can be acquired. For example, determining if a pose with a specific ID is in the frame, the name of a specific pose, or the count of identical poses in the frame.
When multiple identical poses appear, it's possible to specify and acquire parameters for one of them, including Name, X/Y coordinates, Width, Height, and key body point coordinate data.
Example Program:
Output Result: As shown, it can acquire the count and name of Pose ID 1 in the frame, and the coordinate position of the first detected Pose ID 1.
10.3 Pose Recognition Blocks Description
| block | Description |
|---|---|
|
Used to obtain one set of pose recognition data under the Pose Recognition function of HUSKYLENS 2. |
|
Determines whether human bodies exist in the current frame. |
|
Get the related data of the human posture closest to the crosshair on the screen, including: Human posture ID, Human posture name, X coordinate of the center of the human posture, Y coordinate of the center of the human posture, Width, Height, X/Y coordinates of both eyes, ears, and nose, X/Y coordinates of both shoulders, elbows, wrists, hips, knees, and ankles. |
|
Gets the total number of detected human bodies on the screen. |
|
When multiple human bodies appear, obtain the data of a specified body by index. |
|
Detect the number of poses that have been learned by HuskyLens 2, regardless of whether they appear in the current frame. |
|
Determines whether a learned pose with a specified ID exists in the image. (After HUSKYLENS 2 learns poses, IDs are assigned sequentially.) |
|
Obtains the number of learned poses with a specified ID in the current frame. |
|
Obtains the data of a learned pose with a specified ID. |
|
When multiple identical learned poses appear, obtain the data of a specified one by index. |
11.License Recognition Blocks
11.1License Recognition - Output Relevant Data
Under the License Recognition function, when a license plate appears on the HUSKYLENS 2 screen, it can be recognized and framed, and its relevant data acquired. Readable license plate data includes: the ID and Name of a specific license plate, the license plate content (license number), Width, Height, X and Y coordinates of the license plate's center point, and the total number of license plates in the frame.
Example Program:
Click to upload the program to the device in Mind+, and wait for the upload to complete.
Point the HuskyLens 2 camera at the license plate in the frame to learn it. For detailed instructions on how to learn license plates, refer to the HUSKYLENS 2 WIKI.
Point the HUSKYLENS 2 camera at the license plate and observe the data on the UNIHIKER K10 screen.
Output Result: As shown below, the total license plate count includes both learned and unlearned license plates. If the specified license plate is unlearned, its ID is 0. If the specified license plate is learned, it outputs its corresponding ID.
11.2 Output Data for a Specific ID License Plate
When multiple license plates of the same ID appear in the frame, the following example program can be used to gather relevant data for that ID's license plates.
Output Result: As shown below, when multiple license plates of a specific ID appear in the frame, it can acquire the total count of that ID's license plates, the license plate number of a specific plate under that ID, and its coordinates, among other data.
11.3 License Plate Recognition Blocks Description
| block | Description |
|---|---|
|
Used to obtain one set of license recognition data under the License Recognition function of HUSKYLENS 2. |
|
Determines whether a license plate exists in the current frame. |
|
Obtains data of the license closest to the crosshair, including ID, name, center X/Y coordinates, width, height, and decoded content. |
|
Gets the total number of detected licenses (both learned and unlearned). |
|
When multiple licenses are detected, obtains data for a specified license.. |
|
Get the number of license plates that have been learned by HuskyLens 2, regardless of whether they appear in the current frame. |
|
Determines whether a license with the specified ID exists in the frame. Unlearned licenses have ID=0, learned IDs follow learning order. |
|
Obtains the number of licenses with a specified ID in the frame. |
|
Obtains data for a specified license in the frame. |
|
When multiple licenses share the same ID, obtains data for a specified license. |
12.Optical Char Recognition Blocks
12.1ptical Char Recognition - Output Relevant Data
Under the Optical Char Recognition function, HUSKYLENS 2 can recognize and frame the areas where text blocks appear in its field of view, and display the recognized text on the screen. The following example program can be used to count the total number of recognizable text blocks in the frame and acquire data for the text block closest to the crosshair. Readable data includes: the text block's ID, Name, Content, center X and Y coordinates, and the text block's Width and Height.
Example Program:
Click to upload the program to the device in Mind+, and wait for the upload to complete.
Point the HUSKYLENS 2 camera at any optical character and observe the results displayed on the UNIHIKER K10 screen.
Output Result: As shown below, the default output ID for unlearned text blocks is 0.
You can aim it at a learned text block. For detailed instructions on how to learn optical characters, refer to: HUSKYLENS 2 WIKI
Output Result: As shown below, the output ID for a learned text block matches the ID displayed on the HUSKYLENS 2 screen.
Note: Under the Optical Char Recognition function, HUSKYLENS 2 can detect and frame all areas where text blocks appear in the frame, but it only recognizes the content of the single text block area where the crosshair is located and displays the text content at the top left of the frame.
12.2 Optical Char Recognition Blocks Description
| block | Description |
|---|---|
|
Used to acquire char recognition data once under HUSKYLENS 2 Optical Char Recognition. |
|
Determine whether any text is detected in the current screen. |
|
Get data of the text block nearest to the crosshair, including ID, name, center X/Y coordinates, width, and height. |
|
Get the total number of detected text areas on screen. |
|
When multiple text blocks are detected, get related data of a specified text block. |
|
Get the number of text blocks with a specified ID. |
|
Get data of a specific text block by its ID. |
|
When multiple identical text blocks appear, get related data of one specified text block. |
|
Determine whether a text block with a specified ID exists in the screen. |
|
Get the number of text areas that have been learned by HuskyLens 2, regardless of whether they appear in the current frame. |
13.Line Tracking Blocks
13.1 Recognize Intersections and Output Data
Under the Line Tracking function, HUSKYLENS 2 can mark the trajectory of the line in the frame and acquire the current line's length, angle, and X, Y components. When the line branches, it can get the number of branches at the intersection and the corresponding data for each branch, starting counterclockwise.
Example Program:
Output Result: As shown, point the HUSKYLENS camera at a map with lines. Observe the Mind+ serial port output, which can display data such as the current line's length and angle. When the line has multiple branches, it can output the number of branches.
13.2 Line Tracking Blocks Description
| block | Description |
|---|---|
|
Used to obtain one set of Line Tracking data under the Line Tracking function of HUSKYLENS 2. |
|
Determines whether lines exist in the current frame. |
|
Obtains data for the line closest to the crosshair, including X component,Y component,angle,length. |
|
Gets the total number of detected lines on the screen. |
|
When multiple lines appear, obtaining datas of a specified branch. |
14.Face Emotion Recognition Blocks
14.1Face Emotion Recognition And Output Relevant Data
Under the Face Emotion Recognition function, HUSKYLENS 2 can recognize 7 specific emotions: angry (ID 1), disgust (ID 2), fear (ID 3), happiness (ID 4), neutral (ID 5), sad (ID 6), and surprise (ID 7). These emotions have already been learned by HUSKYLENS 2 at the factory, so users do not need to learn them manually again. For detailed function instructions, please see the HUSKYLENS 2 WIKI
The example program below can be used to count the total number of all recognized emotions in the current HUSKYLENS 2 camera frame and output the ID of a specific emotion.
Click to upload the program to the device in Mind+, and wait for the upload to complete.
When any of the seven emotions above appear in the camera frame, observe the HUSKYLENS 2 screen. It will frame the emotion and display its ID, name, and confidence. At the same time, the UNIHIKER K10 screen will display the result data output by the program.
Output Result: As shown below, it outputs the specified emotion ID and the total number of emotions in the frame, as required by the program.
Output Result: As shown below, when multiple emotions with a specific ID appear in the frame, it can acquire the total count, name, and coordinates of a specific emotion under that ID, among other data.
14.3 Face Emotion Recognition Blocks Description
| block | Description |
|---|---|
|
Used to obtain expression recognition data once under HUSKYLENS 2 Face Emotion Recognition. |
|
Determine whether the current image contains seven specific expressions (anger (ID 1), disgust (ID 2), fear (ID 3), happiness (ID 4), neutral (ID 5), sadness (ID 6), and surprise (ID 7)). |
|
Get data of the expression closest to the crosshair: ID, name, center X/Y coordinates, width, and height. |
|
Get the total number of detected expressions. |
|
Get the related data of a specified expression when multiple expressions are detected. |
|
Get the total number of learned expressions that have been learned by HuskyLens 2, regardless of whether they appear in the current frame. |
|
Determine whether an expression with a specified ID is present (anger (ID 1), disgust (ID 2), fear (ID 3), happiness (ID 4), neutral (ID 5), sadness (ID 6), and surprise (ID 7)). |
|
Get the number of expressions with a specified ID. |
|
Get the related data of an expression by its ID. |
|
Get the related data of one specific expression when multiple identical expressions appear. |
15.Tag recognition Blocks
15.1Tag Recognition And Output Relevant Data
HUSKYLENS 2 can recognize AprilTag tags appearing in the frame. You can get data about detected tags through programming. Readable tag data includes: data for a specific tag (such as ID, content, width, height, and X/Y coordinates of the center point) and the total number of detected tags.
Example Program:
Click to upload the program to the device in Mind+, and wait for the upload to complete.
Point the HuskyLens 2 camera at the tag in the frame to learn it. For detailed instructions on how to learn tags, refer to: HUSKYLENS 2 WIKI.
Point the HUSKYLENS 2 camera at the tag and observe the results displayed on the UNIHIKER K10 screen.
Output Result: As shown, it can output the number of detected tags (whether learned or not) and the specified tag ID. Unlearned tags have an ID of 0.
15.2 Get Data for a Specific Tag in the Frame
After HuskyLens 2 recognizes tags, it can acquire data for a specific tag in the frame. For example, it can determine if a tag with a specific ID is in the frame, get the count of tags with the same ID, and when multiple tags with the same ID appear, it can be set to acquire parameters for a specific one, including Name, Content, X/Y coordinates, Width, and Height.
Example Program:
Output Result: As shown, there are two unlearned tags (ID 0) in the frame. The first ID 0 tag is on the left, and its content is 2. The coordinates of second ID 0 tag are (247, 163).
15.3 Tag Reconition Blocks Description
| block | Description |
|---|---|
|
Acquire tag recognition data once. |
|
Determine if any tag is detected. |
|
Get data of tag closest to crosshair: ID, center X/Y coordinates, width, height, decoded content. |
|
Get total number of detected tags,including both unlearned and learned labels.. |
|
Get data of a specified tag. |
|
Get total number of learned tags that have been learned by HuskyLens 2, regardless of whether they appear in the current frame. |
|
Determine whether a tag with the specified ID exists.The IDs of unlearned tags are all set to 0, and the IDs of learned tags are sorted in the order in which they were learned. |
|
Get the number of tags with a specified ID. |
|
Get data of a specified ID tag. |
|
Get data of a specified one when multiple tags share the same ID. |
16.QR Code Recognition Blocks
16.1QR Code Recognition - Output Relevant Data
HUSKYLENS 2 can recognize QR codes appearing in the frame. You can get data about detected QR codes through programming. Readable QR code data includes: the total number of detected QR codes, and data for a specific QR code, including its ID, Content, Width, Height, and X/Y coordinates of the center point.
Example Program:
Click to upload the program to the device in Mind+, and wait for the upload to complete.
Point the HuskyLens 2 camera at the QR code in the frame to learn it. For detailed instructions on how to learn QR codes, refer to: HUSKYLENS 2 WIKI.
Point the HUSKYLENS 2 camera at the QR code and observe the results displayed on the UNIHIKER K10 screen.
Output Result: As shown, it can output the number of detected QR codes (whether learned or not) and the specified QR code ID. Unlearned QR codes have an ID of 0.
16.2 Get Data for a Specific QR Code in the Frame
After HuskyLens 2 recognizes QR codes, it can acquire data for a specific QR code in the frame. For example, it can determine if a QR code with a specific ID is in the frame, get the count of QR codes with the same ID, and when multiple QR codes with the same ID appear, it can be set to acquire parameters for a specific one, including Name, Content, X/Y coordinates, Width, and Height.
Example Program:
Output Result: As shown, there are two unlearned QR codes (ID 0) in the frame. The first ID 0 QR code is on the right, and its content is 'DFROBOT' (Pumpkin Bread). The second ID 0 QR code is on the left, and its coordinates are (245,251).
16.3 QR Reconition Blocks Description
| block | Description |
|---|---|
|
Acquire QR code recognition data once. |
|
Determine if any tag is detected. |
|
Get data of the closest QR code: ID, name, center X/Y coordinates, width, height, decoded content. |
|
Get total number of detected QR codes, including unlearned and learned QR codes. |
|
Get the number of QR codes that have been learned by HuskyLens 2, regardless of whether they appear in the current frame. |
|
Get data of a specified QR code. |
|
Determine whether a specified ID exists. |
|
Get number of QR codes with a specified ID. |
|
Get data of QR codes with a specified ID. |
|
Get data of one specified QR code when multiple shares the same ID. |
17.Barcode Recognition Blocks
17.1 Barcode Recognition And Output Relevant Data
HUSKYLENS 2 can recognize barcodes appearing in the frame. You can get data about detected barcodes through programming. Readable barcode data includes: the total number of detected barcodes, and data for a specific barcode, including its ID, Content, Width, Height, and X/Y coordinates of the center point.
Example Program:
Click to upload the program to the device in Mind+, and wait for the upload to complete.
Point the HuskyLens 2 camera at the barcode in the frame to learn it. For detailed instructions on how to learn barcodes, refer to: HUSKYLENS 2 WIKI.
Point the HUSKYLENS 2 camera at the barcode and observe the results displayed on the UNIHIKER K10 screen.
Output Result: As shown, it can output the number of detected barcodes (whether learned or not) and the specified barcode ID. Unlearned barcodes have an ID of 0.
17.2Get Data for a Specific Barcode
After HuskyLens 2 recognizes barcodes, it can acquire data for a specific barcode in the frame. For example, it can determine if a barcode with a specific ID is in the frame, get the count of barcodes with the same ID, and when multiple barcodes with the same ID appear, it can be set to acquire parameters for a specific one, including Name, Content, X/Y coordinates, Width, and Height.
Example Program:
Output Result: As shown, there are two unlearned barcodes (ID 0) in the frame. The first ID 0 barcode is the bottom one, and its content is 'dfrobot'. The second ID 0 barcode is the top one, and its coordinates are (151, 224).
17.3 Barcode Blocks Description
| block | Description |
|---|---|
|
Retrieve barcode recognition data once. |
|
Determine whether any barcode is detected. |
|
Get data of the barcode closest to the crosshair: ID, name, center X/Y coordinates, width, height, decoded content.. |
|
Get the total number of detected barcodes, including learned and unlearned. |
|
Get data of a specified barcode when multiple are detected. |
|
Get the total number of barcodes that have been learned by HuskyLens 2, regardless of whether they appear in the current frame. |
|
Determine whether a barcode with a specified ID exists. (ID=0 for unlearned). |
|
Get the number of barcodes with the specified ID. |
|
Get related data of barcodes with the specified ID. |
|
When multiple barcodes share the same ID, get related data for one of them. |
18.Instance Segmentation Blocks
18.1 Instance Segmentation - Output Relevant Data
Under the Instance Segmentation function, HUSKYLENS can recognize the class of objects in an image and mark the outline of each object. You can use a program to print the total number of instances recognized by HUSKYLENS, the instance closest to the center, and the Name, ID, center X/Y coordinates, Width, and Height of a specified ID instance.
Example Program:
Output Result: After the program is successfully uploaded, HUSKYLENS 2 will automatically switch to the Instance Segmentation function. Point HUSKYLENS 2 at the object to be recognized (must be one of the 80 classes) and observe the number of recognized instances, the ID of a specific instance, its center point coordinates, and other data. Instance Segmentation function description: HUSKYLENS 2 WIKI
18.2 Get Data for a Specific Instance
Under the Instance Segmentation function, after HUSKYLENS 2 learns, it can acquire data for a specific instance in the frame. For example, it can determine if a learned instance is in the frame, the name of the specified instance, the count of similar instances, and when multiple instances of the same class appear, it can be set to acquire parameters for a specific one, including Name, X/Y coordinates, Width, and Height.
Example Program:
Output Result: After the program is successfully uploaded, HUSKYLENS 2 will automatically switch to the Instance Segmentation function. When multiple instances of the same class appear in the frame, it can recognize the count of instances of that class and output the specified instance's ID, center point coordinates, and other related data.
18.3 Instance Segmentation Blocks Description
| block | Description |
|---|---|
|
Acquire tag instance segmentation data once. |
|
Determine if an instance is present in the current frame. |
|
Obtain relevant data of the instance nearest to the screen crosshair, including the instancee's ID, name, center X coordinate, center Y coordinate, width, and height. |
|
Get the total number of instances detected on the screen, including both unregistered and registered instances. |
|
Obtain the relevant data of a specified instance when multiple instances appear. |
|
Get the number of instances that have been learned by HuskyLens 2, regardless of whether they appear in the current frame. |
|
Determine if an instance with the specified ID exists in the frame. Unlearned IDs are uniformly set to 0, and learned IDs are sorted in the order they were learned. |
|
Get the number of instances with a specified ID. |
|
Obtain the number of instances with the specified ID in the current frame. |
|
When multiple instances are detected, retrieve the relevant data of a specified instance. |